home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / dev / c / EasygadgetsSou.lha / EasyGadgets / Test.c < prev    next >
C/C++ Source or Header  |  1995-03-31  |  3KB  |  127 lines

  1. /*
  2.  *    File:                    GroupFrameClassTester.c
  3.  *    Description:    
  4.  *
  5.  *    (C) 1995, Ketil Hunn
  6.  *
  7.  */
  8.  
  9. #include <exec/types.h>
  10. #include <libraries/gadtools.h>
  11. #include <exec/lists.h>
  12. #include <exec/memory.h>
  13. #include <utility/utility.h>
  14. #include <utility/tagitem.h>
  15. #include <intuition/imageclass.h>
  16. #include <intuition/intuitionbase.h>
  17. #include <intuition/intuition.h>
  18.  
  19. #include <clib/exec_protos.h>
  20. #include <clib/intuition_protos.h>
  21. #include <clib/graphics_protos.h>
  22. #include <clib/gadtools_protos.h>
  23. #include <clib/dos_protos.h>
  24. #include <clib/utility_protos.h>
  25.  
  26. #include <pragmas/exec_pragmas.h>
  27. #include <pragmas/dos_pragmas.h>
  28. #include <pragmas/intuition_pragmas.h>
  29. #include <pragmas/gadtools_pragmas.h>
  30. #include <pragmas/utility_pragmas.h>
  31. #include <pragmas/graphics_pragmas.h>
  32.  
  33. struct IntuitionBase    *IntuitionBase;
  34. struct GfxBase                *GfxBase;
  35. struct Library                *GadToolsBase,
  36.                                             *UtilityBase;
  37. #define    LIBVER    37L
  38.  
  39. #include <string.h>
  40. #include "ProgressClass.c"
  41.  
  42. /*** FUNCTIONS ***********************************************************************/
  43. void main(void)
  44. {
  45.     Class *frameclass;
  46.  
  47.     if(IntuitionBase=(struct IntuitionBase *)OpenLibrary("intuition.library", LIBVER))
  48.     {
  49.         if(UtilityBase=OpenLibrary("utility.library", LIBVER))
  50.         {
  51.             if(GadToolsBase=OpenLibrary("gadtools.library", LIBVER))
  52.             {
  53.                 if(GfxBase=(struct GfxBase *)OpenLibrary("graphics.library", LIBVER))
  54.                 {
  55. //                    if(frameclass=initGroupFrameClass())
  56.                     if(frameclass=initProgressGadgetClass(IntuitionBase, UtilityBase, GfxBase))
  57.                     {
  58.                         struct Window *window;
  59.  
  60.                         if(window=OpenWindowTags(NULL,
  61.                                                 WA_Title,                    "GroupFrameTest",
  62.                                                 WA_Width,                    320,
  63.                                                 WA_Height,                80,
  64.                                                 WA_AutoAdjust,        TRUE,
  65.                                                 WA_Activate,            TRUE,
  66.                                                 WA_DragBar,                TRUE,
  67.                                                 WA_DepthGadget,        TRUE,
  68.                                                 WA_SizeBBottom,        TRUE,
  69.                                                 WA_CloseGadget,        TRUE,
  70.                                                 WA_IDCMP,                    IDCMP_CLOSEWINDOW|IDCMP_REFRESHWINDOW,
  71.                                                 TAG_DONE))
  72.                         {
  73.                             struct Gadget *pro, *tmpgad, *glist;
  74.  
  75.                             tmpgad= (struct Gadget *)&glist;
  76.  
  77.                             if(pro=NewObject(frameclass, NULL,
  78.                                     GA_ID,                    1L,
  79.                                     GA_Top,                    window->BorderTop + 2,
  80.                                     GA_Left,                20,
  81.                                     GA_Width,                200,
  82.                                     GA_Height,            17,
  83. //                                    PRO_Min,                100,
  84. //                                    PRO_Max,                200,
  85. //                                    PRO_ShowPercent,TRUE,
  86.                                     GA_Previous,        tmpgad,
  87.                                     TAG_END))
  88.                             {
  89.                                 struct IntuiMessage *msg;
  90.                                 BOOL                                done=FALSE;
  91.  
  92.                                 AddGList(window, glist, -1, -1, NULL);
  93.  
  94.                                 while(!done)
  95.                                 {
  96.                                     Wait(1L<<window->UserPort->mp_SigBit);
  97.                                     msg=GT_GetIMsg(window->UserPort);
  98.                             
  99.                                     switch(msg->Class)
  100.                                     {
  101.                                         case IDCMP_REFRESHWINDOW:
  102.                                             GT_BeginRefresh(window);
  103.                                             GT_EndRefresh(window, TRUE);
  104.                                             break;
  105.                                         case IDCMP_CLOSEWINDOW:
  106.                                             done=TRUE;
  107.                                             break;
  108.                                     }
  109.                                     GT_ReplyIMsg(msg);
  110.                                 }
  111.                                 RemoveGList(window, glist, -1);
  112.                                 DisposeObject(pro);
  113.                             }
  114.                             CloseWindow(window);
  115.                         }
  116.                         FreeClass(frameclass);
  117.                     }
  118.                     CloseLibrary((struct Library *)GfxBase);
  119.                 }
  120.                 CloseLibrary(GadToolsBase);
  121.             }
  122.             CloseLibrary(UtilityBase);
  123.         }
  124.         CloseLibrary((struct Library *)IntuitionBase);
  125.     }
  126. }
  127.